
a.out:     file format elf64-x86-64


Disassembly of section .init:

0000000000001000 <_init>:
    1000:	f3 0f 1e fa          	endbr64
    1004:	48 83 ec 08          	sub    $0x8,%rsp
    1008:	48 8b 05 d9 2f 00 00 	mov    0x2fd9(%rip),%rax        # 3fe8 <__gmon_start__@Base>
    100f:	48 85 c0             	test   %rax,%rax
    1012:	74 02                	je     1016 <_init+0x16>
    1014:	ff d0                	call   *%rax
    1016:	48 83 c4 08          	add    $0x8,%rsp
    101a:	c3                   	ret

Disassembly of section .plt:

0000000000001020 <.plt>:
    1020:	ff 35 62 2f 00 00    	push   0x2f62(%rip)        # 3f88 <_GLOBAL_OFFSET_TABLE_+0x8>
    1026:	ff 25 64 2f 00 00    	jmp    *0x2f64(%rip)        # 3f90 <_GLOBAL_OFFSET_TABLE_+0x10>
    102c:	0f 1f 40 00          	nopl   0x0(%rax)
    1030:	f3 0f 1e fa          	endbr64
    1034:	68 00 00 00 00       	push   $0x0
    1039:	e9 e2 ff ff ff       	jmp    1020 <_init+0x20>
    103e:	66 90                	xchg   %ax,%ax
    1040:	f3 0f 1e fa          	endbr64
    1044:	68 01 00 00 00       	push   $0x1
    1049:	e9 d2 ff ff ff       	jmp    1020 <_init+0x20>
    104e:	66 90                	xchg   %ax,%ax
    1050:	f3 0f 1e fa          	endbr64
    1054:	68 02 00 00 00       	push   $0x2
    1059:	e9 c2 ff ff ff       	jmp    1020 <_init+0x20>
    105e:	66 90                	xchg   %ax,%ax
    1060:	f3 0f 1e fa          	endbr64
    1064:	68 03 00 00 00       	push   $0x3
    1069:	e9 b2 ff ff ff       	jmp    1020 <_init+0x20>
    106e:	66 90                	xchg   %ax,%ax
    1070:	f3 0f 1e fa          	endbr64
    1074:	68 04 00 00 00       	push   $0x4
    1079:	e9 a2 ff ff ff       	jmp    1020 <_init+0x20>
    107e:	66 90                	xchg   %ax,%ax
    1080:	f3 0f 1e fa          	endbr64
    1084:	68 05 00 00 00       	push   $0x5
    1089:	e9 92 ff ff ff       	jmp    1020 <_init+0x20>
    108e:	66 90                	xchg   %ax,%ax
    1090:	f3 0f 1e fa          	endbr64
    1094:	68 06 00 00 00       	push   $0x6
    1099:	e9 82 ff ff ff       	jmp    1020 <_init+0x20>
    109e:	66 90                	xchg   %ax,%ax
    10a0:	f3 0f 1e fa          	endbr64
    10a4:	68 07 00 00 00       	push   $0x7
    10a9:	e9 72 ff ff ff       	jmp    1020 <_init+0x20>
    10ae:	66 90                	xchg   %ax,%ax

Disassembly of section .plt.got:

00000000000010b0 <__cxa_finalize@plt>:
    10b0:	f3 0f 1e fa          	endbr64
    10b4:	ff 25 3e 2f 00 00    	jmp    *0x2f3e(%rip)        # 3ff8 <__cxa_finalize@GLIBC_2.2.5>
    10ba:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

Disassembly of section .plt.sec:

00000000000010c0 <my_strlen@plt>:
    10c0:	f3 0f 1e fa          	endbr64
    10c4:	ff 25 ce 2e 00 00    	jmp    *0x2ece(%rip)        # 3f98 <my_strlen@Base>
    10ca:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

00000000000010d0 <mfopen@plt>:
    10d0:	f3 0f 1e fa          	endbr64
    10d4:	ff 25 c6 2e 00 00    	jmp    *0x2ec6(%rip)        # 3fa0 <mfopen@Base>
    10da:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

00000000000010e0 <mfwrite@plt>:
    10e0:	f3 0f 1e fa          	endbr64
    10e4:	ff 25 be 2e 00 00    	jmp    *0x2ebe(%rip)        # 3fa8 <mfwrite@Base>
    10ea:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

00000000000010f0 <strlen@plt>:
    10f0:	f3 0f 1e fa          	endbr64
    10f4:	ff 25 b6 2e 00 00    	jmp    *0x2eb6(%rip)        # 3fb0 <strlen@GLIBC_2.2.5>
    10fa:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000001100 <__stack_chk_fail@plt>:
    1100:	f3 0f 1e fa          	endbr64
    1104:	ff 25 ae 2e 00 00    	jmp    *0x2eae(%rip)        # 3fb8 <__stack_chk_fail@GLIBC_2.4>
    110a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000001110 <printf@plt>:
    1110:	f3 0f 1e fa          	endbr64
    1114:	ff 25 a6 2e 00 00    	jmp    *0x2ea6(%rip)        # 3fc0 <printf@GLIBC_2.2.5>
    111a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000001120 <mfclose@plt>:
    1120:	f3 0f 1e fa          	endbr64
    1124:	ff 25 9e 2e 00 00    	jmp    *0x2e9e(%rip)        # 3fc8 <mfclose@Base>
    112a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

0000000000001130 <perror@plt>:
    1130:	f3 0f 1e fa          	endbr64
    1134:	ff 25 96 2e 00 00    	jmp    *0x2e96(%rip)        # 3fd0 <perror@GLIBC_2.2.5>
    113a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)

Disassembly of section .text:

0000000000001140 <_start>:
    1140:	f3 0f 1e fa          	endbr64
    1144:	31 ed                	xor    %ebp,%ebp
    1146:	49 89 d1             	mov    %rdx,%r9
    1149:	5e                   	pop    %rsi
    114a:	48 89 e2             	mov    %rsp,%rdx
    114d:	48 83 e4 f0          	and    $0xfffffffffffffff0,%rsp
    1151:	50                   	push   %rax
    1152:	54                   	push   %rsp
    1153:	45 31 c0             	xor    %r8d,%r8d
    1156:	31 c9                	xor    %ecx,%ecx
    1158:	48 8d 3d ca 00 00 00 	lea    0xca(%rip),%rdi        # 1229 <main>
    115f:	ff 15 73 2e 00 00    	call   *0x2e73(%rip)        # 3fd8 <__libc_start_main@GLIBC_2.34>
    1165:	f4                   	hlt
    1166:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
    116d:	00 00 00 

0000000000001170 <deregister_tm_clones>:
    1170:	48 8d 3d 99 2e 00 00 	lea    0x2e99(%rip),%rdi        # 4010 <__TMC_END__>
    1177:	48 8d 05 92 2e 00 00 	lea    0x2e92(%rip),%rax        # 4010 <__TMC_END__>
    117e:	48 39 f8             	cmp    %rdi,%rax
    1181:	74 15                	je     1198 <deregister_tm_clones+0x28>
    1183:	48 8b 05 56 2e 00 00 	mov    0x2e56(%rip),%rax        # 3fe0 <_ITM_deregisterTMCloneTable@Base>
    118a:	48 85 c0             	test   %rax,%rax
    118d:	74 09                	je     1198 <deregister_tm_clones+0x28>
    118f:	ff e0                	jmp    *%rax
    1191:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
    1198:	c3                   	ret
    1199:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

00000000000011a0 <register_tm_clones>:
    11a0:	48 8d 3d 69 2e 00 00 	lea    0x2e69(%rip),%rdi        # 4010 <__TMC_END__>
    11a7:	48 8d 35 62 2e 00 00 	lea    0x2e62(%rip),%rsi        # 4010 <__TMC_END__>
    11ae:	48 29 fe             	sub    %rdi,%rsi
    11b1:	48 89 f0             	mov    %rsi,%rax
    11b4:	48 c1 ee 3f          	shr    $0x3f,%rsi
    11b8:	48 c1 f8 03          	sar    $0x3,%rax
    11bc:	48 01 c6             	add    %rax,%rsi
    11bf:	48 d1 fe             	sar    $1,%rsi
    11c2:	74 14                	je     11d8 <register_tm_clones+0x38>
    11c4:	48 8b 05 25 2e 00 00 	mov    0x2e25(%rip),%rax        # 3ff0 <_ITM_registerTMCloneTable@Base>
    11cb:	48 85 c0             	test   %rax,%rax
    11ce:	74 08                	je     11d8 <register_tm_clones+0x38>
    11d0:	ff e0                	jmp    *%rax
    11d2:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
    11d8:	c3                   	ret
    11d9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

00000000000011e0 <__do_global_dtors_aux>:
    11e0:	f3 0f 1e fa          	endbr64
    11e4:	80 3d 25 2e 00 00 00 	cmpb   $0x0,0x2e25(%rip)        # 4010 <__TMC_END__>
    11eb:	75 2b                	jne    1218 <__do_global_dtors_aux+0x38>
    11ed:	55                   	push   %rbp
    11ee:	48 83 3d 02 2e 00 00 	cmpq   $0x0,0x2e02(%rip)        # 3ff8 <__cxa_finalize@GLIBC_2.2.5>
    11f5:	00 
    11f6:	48 89 e5             	mov    %rsp,%rbp
    11f9:	74 0c                	je     1207 <__do_global_dtors_aux+0x27>
    11fb:	48 8b 3d 06 2e 00 00 	mov    0x2e06(%rip),%rdi        # 4008 <__dso_handle>
    1202:	e8 a9 fe ff ff       	call   10b0 <__cxa_finalize@plt>
    1207:	e8 64 ff ff ff       	call   1170 <deregister_tm_clones>
    120c:	c6 05 fd 2d 00 00 01 	movb   $0x1,0x2dfd(%rip)        # 4010 <__TMC_END__>
    1213:	5d                   	pop    %rbp
    1214:	c3                   	ret
    1215:	0f 1f 00             	nopl   (%rax)
    1218:	c3                   	ret
    1219:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)

0000000000001220 <frame_dummy>:
    1220:	f3 0f 1e fa          	endbr64
    1224:	e9 77 ff ff ff       	jmp    11a0 <register_tm_clones>

0000000000001229 <main>:
    1229:	f3 0f 1e fa          	endbr64
    122d:	55                   	push   %rbp
    122e:	48 89 e5             	mov    %rsp,%rbp
    1231:	48 83 ec 40          	sub    $0x40,%rsp
    1235:	64 48 8b 04 25 28 00 	mov    %fs:0x28,%rax
    123c:	00 00 
    123e:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
    1242:	31 c0                	xor    %eax,%eax
    1244:	48 8d 05 b9 0d 00 00 	lea    0xdb9(%rip),%rax        # 2004 <_IO_stdin_used+0x4>
    124b:	48 89 c6             	mov    %rax,%rsi
    124e:	48 8d 05 b1 0d 00 00 	lea    0xdb1(%rip),%rax        # 2006 <_IO_stdin_used+0x6>
    1255:	48 89 c7             	mov    %rax,%rdi
    1258:	e8 73 fe ff ff       	call   10d0 <mfopen@plt>
    125d:	48 89 45 c8          	mov    %rax,-0x38(%rbp)
    1261:	48 83 7d c8 00       	cmpq   $0x0,-0x38(%rbp)
    1266:	75 0f                	jne    1277 <main+0x4e>
    1268:	48 8d 05 9f 0d 00 00 	lea    0xd9f(%rip),%rax        # 200e <_IO_stdin_used+0xe>
    126f:	48 89 c7             	mov    %rax,%rdi
    1272:	e8 b9 fe ff ff       	call   1130 <perror@plt>
    1277:	48 b8 68 65 6c 6c 6f 	movabs $0x6f77206f6c6c6568,%rax
    127e:	20 77 6f 
    1281:	ba 72 6c 64 0a       	mov    $0xa646c72,%edx
    1286:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
    128a:	48 89 55 d8          	mov    %rdx,-0x28(%rbp)
    128e:	48 c7 45 de 00 00 00 	movq   $0x0,-0x22(%rbp)
    1295:	00 
    1296:	48 c7 45 e6 00 00 00 	movq   $0x0,-0x1a(%rbp)
    129d:	00 
    129e:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
    12a2:	48 89 c7             	mov    %rax,%rdi
    12a5:	e8 16 fe ff ff       	call   10c0 <my_strlen@plt>
    12aa:	89 c1                	mov    %eax,%ecx
    12ac:	48 8b 55 c8          	mov    -0x38(%rbp),%rdx
    12b0:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
    12b4:	89 ce                	mov    %ecx,%esi
    12b6:	48 89 c7             	mov    %rax,%rdi
    12b9:	e8 22 fe ff ff       	call   10e0 <mfwrite@plt>
    12be:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
    12c2:	48 89 c7             	mov    %rax,%rdi
    12c5:	e8 26 fe ff ff       	call   10f0 <strlen@plt>
    12ca:	c6 44 05 d0 00       	movb   $0x0,-0x30(%rbp,%rax,1)
    12cf:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
    12d3:	48 89 c6             	mov    %rax,%rsi
    12d6:	48 8d 05 37 0d 00 00 	lea    0xd37(%rip),%rax        # 2014 <_IO_stdin_used+0x14>
    12dd:	48 89 c7             	mov    %rax,%rdi
    12e0:	b8 00 00 00 00       	mov    $0x0,%eax
    12e5:	e8 26 fe ff ff       	call   1110 <printf@plt>
    12ea:	48 8b 45 c8          	mov    -0x38(%rbp),%rax
    12ee:	48 89 c7             	mov    %rax,%rdi
    12f1:	e8 2a fe ff ff       	call   1120 <mfclose@plt>
    12f6:	b8 00 00 00 00       	mov    $0x0,%eax
    12fb:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
    12ff:	64 48 2b 14 25 28 00 	sub    %fs:0x28,%rdx
    1306:	00 00 
    1308:	74 05                	je     130f <main+0xe6>
    130a:	e8 f1 fd ff ff       	call   1100 <__stack_chk_fail@plt>
    130f:	c9                   	leave
    1310:	c3                   	ret

Disassembly of section .fini:

0000000000001314 <_fini>:
    1314:	f3 0f 1e fa          	endbr64
    1318:	48 83 ec 08          	sub    $0x8,%rsp
    131c:	48 83 c4 08          	add    $0x8,%rsp
    1320:	c3                   	ret
